﻿using System;
using System.Diagnostics.Contracts;

namespace Elderos.Utils.Extensions
{
	public static class MathExtended
	{
		public static double Sigmoid(double x, double pitch = 1) 
		{
			return 1/(1 + pitch*Math.Pow(Math.E, -x));
		}

		public static double NormalizedArcctg(double x, double seed = 0, double lift = 0.5)
		{
			return (Math.Atan(x - seed))/Math.PI + lift;
		}

        public static double Arsh(double x)
        {
            return Math.Log(x + Math.Sqrt(Math.Pow(x, 2) + 1));
        }
	}
}